package net.dodoman.bit;

/**
 * 
 * @author yanping
 * 
 */
public class BitOperator {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		testBinary();
	}

	private static void testBinary() {
		// System.out.println(2 << 2);
		int a = 8;
		System.out.println(Integer.toBinaryString(a));

		int af = -5;
		System.out.println(Integer.toBinaryString(af));

		int b = ~a;
		System.out.println(Integer.toBinaryString(b));
		System.out.println(b);
		System.out.println(Integer.toBinaryString(Integer.MAX_VALUE));

		// System.out.println(Integer.toBinaryString(Integer.reverse(a)));

		// 2: 00000000 00000000 00000000 00000010
		// -2: 11111111 11111111 11111111 11111110
		// ~2: 11111111 11111111 11111111 11111101
		// 5: 00000000 00000000 00000000 00000101
		// -5: 11111111 11111111 11111111 11111011
		// 计算机输出时按照补码输出
		// ~5: 11111111 11111111 11111111 11111010
		// System.out.println(Integer.parseInt(
		// "11111111111111111111111111111010", 2));
		// 0111111 11111111 11111111 11111111
	}
}
